package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.CheckGroup;
import com.itheima.pojo.Role;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface RoleDao {

    Set<Role> findByUserId(Integer userId);

    List<Role> findAll();

    void setRoleAndUser(Map<String, Integer> map);

    void add(Role role);

    void setRoleAndMenu(Map<String, Integer> map);

    void setRoleAndPermission(Map<String, Integer> map);

    Page<Role> findByCondition(String queryString);

    Role findById(Integer id);

    void deleteUserAssociation(Integer id);

    void deletePermissionAssociation(Integer id);

    void deleteMenuAssociation(Integer id);

    void edit(Role role);

    List<Integer> findRoleIdsByUserId(Integer userId);

    void deleteById(Integer id);
}
